A character generator provided in a display apparatus or a printer includes, in general, a memory storing a number of character patterns in the form of, for example, matrices, and means for accessing this memory using a code point representing a character to be outputted. In a system having Kanji processing functions, several thousands or, in certain cases, more than ten thousands character patterns must be stored. Therefore, in order to increase performance, the character pattern memory consists of a slow, large auxiliary storage such as a magnetic disk which stores all the character patterns, and a fast, small buffer memory which stores about a thousand character patterns of high frequency in use selected therefrom. This concept is the same as that of storage hierarchy in conventional computers and each character pattern corresponds to a data block. A problem exists in buffer memory management including replacement.
Frequency in use of each character is statistically known to some extent based on which character codes are constructed. For example, a code point of lower value is assigned to a character of higher frequency in use. The standard character code is two bytes (16 bits) wide. When the buffer memory is accessed by a code point, it is first determined by a directory whether a character pattern corresponding to the code point resides in the buffer memory. If it does, the corresponding character pattern is read out by translating the code point to a buffer memory address. If not, it is necessary to transfer the corresponding character pattern to the buffer memory from the auxiliary storage.
As seen from the above, a code point to buffer memory address translation is made faster if a search time of the directory is shorter, and the translation is much faster if the directory may not be used. With regard to the frequency in use of characters, an overall performance is improved if the translation speed is made faster for the characters of higher frequency in use. In the past, however, no character generator has been known which takes the directory configuration and the frequency in use of characters into consideration so as to make the translation speed faster.